package com.shuziren.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.shuziren.entity.InterviewPosition;
import com.shuziren.entity.dto.SelectInterviewPositionDto;
import com.shuziren.entity.dto.InterviewPositionDto;
import com.shuziren.entity.dto.UpdateinterviewPositionDto;

/**
 * 面试职位服务接口，提供对面试职位信息的增删改查操作
 */
public interface InterviewPositionService extends IService<InterviewPosition> {
    /**
     * 添加面试职位信息
     * @param interviewPositionDto 面试职位信息
     * @return 是否添加成功
     */
    boolean addInterviewPosition(InterviewPositionDto interviewPositionDto);

    /**
     * 删除面试职位信息
     * @param id 面试职位ID
     * @return 是否删除成功
     */
    boolean deleteInterviewPosition(Integer id);

    /**
     * 更新面试职位信息
     * @param updateinterviewPositionDto 面试职位信息
     * @return 是否更新成功
     */
    boolean updateInterviewPosition(UpdateinterviewPositionDto updateinterviewPositionDto);

    /**
     * 根据ID获取面试职位信息
     * @param id 面试职位ID
     * @return 对应的面试职位信息
     */
    InterviewPosition getInterviewPosition(Integer id);

    /**
     * 根据部门级别状态职位名称查询面试职位列表
     * @param
     * @return 面试职位列表
     */
    Page<InterviewPosition> listInterviewPositions(SelectInterviewPositionDto queryVO);
}